package com.ocom.common.entity.payconfig;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.util.Date;

/**
 * subsidy_data
 * @author 
 */
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName(value = "subsidy_data")
@Data
public class EntitySubsidyData implements Serializable {

    private static final long serialVersionUID = -7153687441233180903L;

    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    /**
     * 单位编号
     */
    private Long comId;

    /**
     * 人员编号
     */
    private Integer pId;

    /**
     * 补贴计划编号
     */
    private Integer planId;

    /**
     * 补贴月份，yyyyMM
     */
    private String monthValue;

    /**
     * 第几次
     */
    private Byte times;

    /**
     * 1：未发放；4：已发放；5：停止发放；-1：发放失败
     */
    private Byte dataStatus;

    /**
     * 计划发放金额。以分为单位
     */
    private Integer planMoney;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+08")
    private Date grantTime;

    /**
     * 实际发放金额。以分为单位
     */
    private Integer completeMoney;

    /**
     * 清补贴金额。以分为单位
     */
    private Integer clearMoney;

    private String orderNo;

    /**
     * 生成时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+08")
    private Date createTime;

    /**
     * 更新时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+08")
    private Date updateTime;

    /**
     * 创建人p_id
     */
    private Long createUserid;

    /**
     * 更新人p_id
     */
    private Long updateUserid;

    @TableField(exist = false)
    private Long planAmount;

    @TableField(exist = false)
    private Integer planNumber;

    @TableField(exist = false)
    private Long completeAmount;

    @TableField(exist = false)
    private Integer completeNumber;

    @TableField(exist = false)
    private Integer clearAmount;

    @TableField(exist = false)
    private Integer clearNumber;

    @TableField(exist = false)
    private String pName;


    @TableField(exist = false)
    private Long deptId;

    @TableField(exist = false)
    private String pCode;

    @TableField(exist = false)
    private String deptName;


    //补贴钱包：0-5
    Integer wallet;

    //子账户号（0-消费，1-公话，10001-建行生活）
    private Integer subAccount;
}